Bluetooth® commands attention as wireless short-range communication means and a variety of Bluetooth devices are developed and commercially available.
Bluetooth is a wireless communication standard standardized by Bluetooth SIG (Special Interest Group), and a Bluetooth device communicates with another device having a Bluetooth module using a 2.4 GHZ band (IMS (Industrial Science Medical)).
A network formed using Bluetooth is referred to as a piconet or is referred to as a scatternet including a plurality of interconnected piconets depending on configuration. Bluetooth devices, functioning as a master role and a slave role, are contained in the network. For convenience, the Bluetooth device functioning as the master role is simply referred to as a master, and the Bluetooth device functioning as the slave role is simply referred to as a slave.
FIG. 1 illustrates the concept of the piconet and the scatternet.
As shown, the piconet includes a single master, and one or a plurality of slaves perform communications under the control of the master. In this example, a piconet 1 includes a master 1, a slave 1-1, and a slave 1-2. A piconet 2 includes a master 2 and a slave 2-1.
A scatternet is formed of the piconet 1 and the piconet 2 interconnected to each other. As shown in FIG. 1, a communication link between the piconet 1 and the piconet 2 is disabled.
To transmit and receive various information in the piconet, all Bluetooth devices in the piconet must be synchronized in frequency axis and time axis.
The synchronization in the frequency axis and the synchronization in the time axis are now discussed.
In Bluetooth, a signal is sent from the master to the slave using a frequency width of 79 MHZ. The master sends the signal by randomly changing (hopping) the transmission frequency of information by a frequency width of 1 MHz rather than concurrently occupying the frequency width of 79 MHz.
The receiving slave synchronizes with the randomly changing transmission frequency of the master, thereby appropriately changing the reception frequency thereof to receive the information sent from the master.
A pattern of changing frequencies of the master and the slave is called a frequency hopping pattern, and a state in which the frequency hopping pattern is commonly shared by the master and the slave is defined as a frequency axis synchronization established state.
To allow the master to communicate with a plurality of slaves in a Bluetooth system, a communication path (channel) between the master and the slaves is time-division multiplexed by a unit of 625 μs. A time duration of 625 μs is called a time slot. A state in which the time slot is commonly shared is defined as a time axis synchronization established state.
As will discussed more detail later, all slaves calculate a frequency hopping pattern to establish the synchronization in the frequency axis based on a Bluetooth address of the master, adds an offset to a Bluetooth clock managed by own slave in accordance with a Bluetooth clock of the master, and sets the timing of the time slot to establish the synchronization in the time axis.
Each Bluetooth device has a 48 bit Bluetooth address unique thereto, and based on the Bluetooth address, a hopping pattern is uniquely calculated. All Bluetooth devices manage their own Bluetooth clocks.
Before forming the piconet, the master and the slave exchange a variety of information including the Bluetooth address, and the Bluetooth clock to establish the frequency axis synchronization and the time axis synchronization.
The process of a conventional Bluetooth device to establish the frequency axis synchronization and the time axis synchronization and to form a piconet is discussed below with reference to flowcharts shown in FIGS. 2 and 3.
In the process to be discussed below, the master 1, the slave 1-1, and the slave 1-2 shown in FIG. 1 are synchronized, and the piconet 1 is configured. Packets, etc. exchanged therebetween will be discussed later, and a general flow of the process is discussed here.
In step S1, the master 1 broadcasts an IQ (Inquiry) packet to detect slaves present surrounding the master.
For example, if the slave 1-1 and the slave 1-2 are present in the master 1 as shown in FIG. 1, the slave 1-1 receives the IQ packet sent from the master 1 in step S31.
In step S32, the slave 1-1 replies to the master with a packet (FHS packet) indicating own attribute information.
Similarly, the slave 1-2 receives the IQ packet in step S51, and replies to the master with the FHS packet thereof in step S52.
The FHS packet sent from the slave to the master contains, as the attribute information of the slave, the Bluetooth address and the Bluetooth clock of the slave.
The master 1 receives the FHS packet from the slave 1-1 in step S2, and receives the FHS packet from the slave 1-2 in step S3.
An “Inquiry” refers to a series of steps of the master including broadcasting the IQ packet and receiving the FHS packet sent in response, and a series of steps of the slave including receiving the sent IQ packet, and sending the FHS packet in response.
In step S4, the master 1 sends, to the slave 1-1, an ID packet generated based on the FHS packet received in step S2.
The slave 1-1 receives the ID packet in step S33. In step S34, the slave 1-1 sends the same ID packet as the one received to notify the master that the transmission and the reception of packets are enabled.
Upon receiving the ID packet sent from the slave 1-1 in step S5, the master 1 proceeds to step S6. The master 1 sends the FHS packet to the slave 1-1, and notifies the slave 1-1 of the Bluetooth address and the Bluetooth clock as own attribute information.
In step S35, the slave 1-1 receives the FHS packet from the master 1, and the Bluetooth addresses and the Bluetooth clocks required to establish intra-piconet synchronization are now exchanged between the master 1 and the slave 1-1.
In step S36, the slave 1-1 sends the ID packet to the master 1, and acknowledges that the FHS packet has been received.
In step S37, the slave 1-1 establishes synchronization with the master 1 based on the Bluetooth address and the Bluetooth clock notified of by the master 1. The process of the slave to establish synchronization based on the information notified of by the master will be discussed in detail later.
Upon receiving the notification from the slave 1-1 in step S7, the master 1 proceeds to step S8. In succession to exchanging the FHS packet and the ID packet with the slave 1-1, the master 1 exchanges these pieces of information with the slave 1-2. In other words, process steps of the master 1 in steps S8 through step S11, and process steps of the slave 1-2 in steps S53 through S57 are respectively identical to process steps in steps S4 through S7, and process steps in steps S33 through S37.
More specifically, the master 1 sends the ID packet to the slave 1-2 in step S8. In response, the slave 1-2 sends the ID packet to acknowledge the reception of the ID packet. In step S10, the master 1 sends the FHS packet to the slave 1-2 to notify the slave 1-2 of own attribute information.
In step S55, the slave 1-2 receives the FHS packet from the master 1. In step S56, the slave 1-2 sends the ID packet to the master 1. In step S57, the slave 1-2 establishes synchronization with the master 1 based on the Bluetooth address and the Bluetooth clock sent from the master 1.
A series of process steps from the “inquiry” to the establishment of synchronization is referred to as “page”.
In step S12, the master 1 requests the slave 1-1 to notify of the Bluetooth device name. Each Bluetooth device has its own Bluetooth device name set therefor, and the modification of the Bluetooth device name is up to a user.
The Bluetooth device name is used for the user to operate the master to select a communication partner (slave), for example. If the communication partner is selected based on the Bluetooth address, the user must make a mental note of addresses of all Bluetooth devices present in the piconet. The Bluetooth address is a number represented by 48 bits.
Upon receiving the request from the master 1 in step S38, the slave 1-1 proceeds to step S39. The slave 1-1 notifies the master 1 of the set Bluetooth device name.
In step S13, the master 1 receives the Bluetooth device name notified of by the slave 1-1.
In step S14, the master 1 also requests the slave 1-2 to notify of the Bluetooth device name.
The slave 1-2, which has received the request in step S58, notifies the master 1 of the set Bluetooth device name in step S59.
Upon receiving the notification from the slave 1-2 in step S15, the master 1 displays a selection screen for selecting a slave to communicate on a display thereof in step S16. Presented on the selection screen are the Bluetooth device names acquired in steps S13 and S15. Viewing the selection screen, the user may select the slave to communicate with later.
FIG. 4 illustrates the selection screen presented on the Bluetooth device (master) provided subsequent to the establishment of synchronization.
As shown, a selection window 1 appears. A master screen 11 displaying information of the master operated by the user is presented on the left-hand side of the selection window.
The master screen 11 includes a device name screen partition 11A and an address screen partition 11B. The Bluetooth device name of the master is displayed on the device name screen partition 11A, and the Bluetooth device address is displayed on the address screen partition 11B.
More in detail, a category of the Bluetooth device of the master is displayed on the upper row of the device name screen partition 11A, while the Bluetooth device name modifiable to the user's preference is displayed on the lower row of the device name screen partition 11A. In this example, the category is “(personal) computer”, and the device name is “Red's computer”.
Profile selection buttons 12 are arranged in a vertical column at the approximate center of the selection window 1. The user selects the profile for the slave. The profile defines a communication system of the slave. As shown in FIG. 4, eight profile selection buttons 12 appear.
Displayed on the right portion of the selection window 1 are slave screen partitions 13 through 19. Like in the master screen 11, each slave screen partition includes a device name screen partition and an address screen partition.
In the example shown in FIG. 4, communications are going on between the slave screen partition 16 and the master. The category of the Bluetooth device displayed on the slave screen partition 16 is “cellular phone”, and the Bluetooth device name displayed on the slave screen partition 16 is “red cellular phone”.
FIG. 5 illustrates another example of the selection screen displayed on the Bluetooth device subsequent to the establishment of synchronization.
A selection window 31 presents a profile on the left-hand portion thereof, and a Bluetooth device name of the slave with a blank arrow mark interposed therebetween. For example, the master performs Bluetooth communications at the profile for transferring a music file to a slave (a black player) displayed on a first row of the selection window 31.
The piconet is thus established. To start communications, communicable Bluetooth devices are listed as shown in FIGS. 4 and 5. The user then must select a communication partner.
After selecting the communication partner, the user must further select the profile in accordance with the device of the communication partner.
A system using Bluetooth communication has been proposed in which a charge for a commodity purchased from a vending machine is paid using a cellular phone having a Bluetooth module. In such a system, the user may be expected to select the communication partner to greater or lesser degrees.
The purchasing procedure using the system in the vending machine may become complicated in comparison with the purchasing procedure using banknotes.